//
//  BZDatePanel.h
//  BZBaseWidget
//
//  Created by 郭艺伟 on 2017/10/12.
//  Copyright © 2017年 quheng. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "BZDatePanelHeader.h"

@interface BZDatePanel : UIView

/**
 *  点击其它部分 是否返回，默认NO，不返回
 */
@property (nonatomic, assign) BOOL isTapMaskReturn;

/**
 *  单时间选择调用接口
 *
 *  @param view
 *  @param title
 *  @param defaultDate
 *  @param mode
 *  @param pick
 */
+ (void)showInView:(UIView *)view
         titleText:(NSString *)title
       defaultDate:(NSDate *)defaultDate
              mode:(BZDatePickerMode) mode
        pickUpDate:(void (^)(NSDate *date))pick;

/**
 *  单时间选择调用接口点击遮罩返回
 *
 *  @param view
 *  @param title
 *  @param defaultDate
 *  @param mode
 *  @param pick
 */
+ (void)showInView:(UIView *)view
         titleText:(NSString *)title
       defaultDate:(NSDate *)defaultDate
              mode:(BZDatePickerMode) mode
   isTapMaskReturn:(BOOL)isReturn
        pickUpDate:(void (^)(NSDate *date))pick;

/**
 *  单时间选择调用接口点击遮罩返回
 *
 *  @param view
 *  @param title
 *  @param defaultDate
 *  @param minimumDate
 *  @param maximumDate
 *  @param mode
 *  @param pick
 */
+ (void)showInView:(UIView *)view
         titleText:(NSString *)title
       defaultDate:(NSDate *)defaultDate
       minimumDate:(NSDate *)minimumDate
       maximumDate:(NSDate *)maximumDate
              mode:(BZDatePickerMode) mode
   isTapMaskReturn:(BOOL)isReturn
        pickUpDate:(void (^)(NSDate *date))pick;

/**
 *  开始时间与结束时间选择调用接口点击遮罩返回
 *
 *  @param view
 *  @param titleFirst
 *  @param titleLast
 *  @param defaultFirstDate
 *  @param defaultLastDate
 *  @param mode
 *  @param pick
 */
+ (void)showInView:(UIView *)view
    titleFirstText:(NSString *)titleFirst
     titleLastText:(NSString *)titleLast
  defaultFirstDate:(NSDate *)defaultFirstDate
   defaultLastDate:(NSDate *)defaultLastDate
              mode:(BZDatePickerMode) mode
   isTapMaskReturn:(BOOL)isReturn
        pickUpDate:(void (^)(NSDate *dateFirst,NSDate *dateLast))pick;

/**
 *  开始时间与结束时间选择调用接口
 *
 *  @param view
 *  @param titleFirst
 *  @param titleLast
 *  @param defaultFirstDate
 *  @param defaultLastDate
 *  @param mode
 *  @param pick
 */
+ (void)showInView:(UIView *)view
    titleFirstText:(NSString *)titleFirst
     titleLastText:(NSString *)titleLast
  defaultFirstDate:(NSDate *)defaultFirstDate
   defaultLastDate:(NSDate *)defaultLastDate
              mode:(BZDatePickerMode) mode
        pickUpDate:(void (^)(NSDate *dateFirst,NSDate *dateLast))pick;
@end
